今天要來筆記一些可能不太常用的語法,大概知道就好的下篇~~~
這裡特別說明刪除的是 commit 後的檔案,是因為我腦袋打結了,以為不管是在工作目錄還是暫存區都可以刪除,但是 不是這樣D 大概試了87次、崩潰了8787次才好一點點點點。
使用 git rm 檔案名稱.副檔名
--這裡可以看到我有先把他 commit 後才做刪除。狀態是顯示 deleted
也可以先使用 rm
去刪除檔案,只是要記得還要使用 git add .
或git add --all
加入暫存區喲!
使用 git rm --cached
不會真的刪掉檔案,他會回到工作目錄上,並且不會被追蹤 (Untracked)
。
更改檔名使用 git mv 舊檔名.副檔名 新檔名.副檔名
--耶 成功惹><
豪繞口喲>< 意思就是修改我們每次 commit 的時候會寫到的'修改記錄'窩~
先看一下我用 git log --oneline
的紀錄
--注意黃色框框的內容
使用 git commit --amend -m ""
去做修改 -m 提供要修改的訊息
來看看有沒有改成功 git log --oneline
有欸~~~開勳。
但等等等等等,好像哪裡怪怪der~~~對,就是我們的識別碼也變嚕!雖然裡面內容都沒變,但會變成全新的commit紀錄:)
注意!!!這個指令只針對最後一次的 commit 有用喲!
注意!!! --amend 這個參數也有這個意思 -commit 後發現有幾個檔案忘了加入進去,想要補內容進去時
先看我的紀錄
然後新增完檔案後要加入剛剛的 commit 的時候
使用 git commit --amend --no-edit
--no-edit 意指我不要編輯 commit 的'修改紀錄'
再看一次我們的紀錄
就完成嚕!
如果沒有使用 --no-edit
會跑出下面這個 vim 的視窗!我研究了一下下覺得拿他沒轍QQ 所以一定要記得R
--更多 vim 請看超簡明 Vim 操作介紹
如果怕使用錯,那就用
git reset
掉 commit 後,加入檔案後重新 commit 就好惹喲!
這裡要說明 Git 是計算檔案內容der,所以如果要提交空目錄要這樣做~
--耶耶可以惹ε٩(๑> ₃ <)۶з
使用 git blame 檔案名.副檔名
就可以很清楚地看到是誰
、何時
、幹了什麼
也可以使用 -L
來看哪幾行的 code
Ex. git blame -L 第幾行,第幾行 檔案名.副檔名
git blame -L 3,8 helloworld.html
如果只是單純用 rm
刪除了某個檔案如何救回來呢?
使用 git checkout 檔案名.副檔名
就可以嚕! git checkout
好眼熟窩,沒有錯,在 Day12【Git與GitHub】工作狀態還原有示範過:)
--如果想救回全部檔案只要輸入 git checkout .
就可以摟!
注意!這裡刪除使用的是 rm ,所以可以使用 git checkout 救回來喲!
如果要救回被 git rm
的檔案的話要先回到最近的 commit 紀錄,就可以看到你剛刪除的檔案嚕!
我就是在刪除檔案這邊腦袋打結的!!!一樣都是刪除檔案怎麼差這麼多?!
雖然都可以救回檔案,只是方法不一樣。 這裡我還不是很曉得原理,代我釐清後再來做更新吧(๑•́ ₃ •̀๑)
完成雜學惹!!!明天要進入分支的新世界惹,祝福我自己(ง๑ •̀_•́)ง
感覺雜學還會有幾篇R